import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from '@angular/core';
import { RouterModule } from '@angular/router';

import { GbSubjectSharedModule } from '../../shared';
import {
    TopSubjectMySuffixService,
    TopSubjectMySuffixPopupService,
    TopSubjectMySuffixComponent,
    TopSubjectMySuffixDetailComponent,
    TopSubjectMySuffixDialogComponent,
    TopSubjectMySuffixPopupComponent,
    TopSubjectMySuffixDeletePopupComponent,
    TopSubjectMySuffixDeleteDialogComponent,
    topSubjectRoute,
    topSubjectPopupRoute,
    TopSubjectMySuffixResolvePagingParams,
} from './';

const ENTITY_STATES = [
    ...topSubjectRoute,
    ...topSubjectPopupRoute,
];

@NgModule({
    imports: [
        GbSubjectSharedModule,
        RouterModule.forChild(ENTITY_STATES)
    ],
    declarations: [
        TopSubjectMySuffixComponent,
        TopSubjectMySuffixDetailComponent,
        TopSubjectMySuffixDialogComponent,
        TopSubjectMySuffixDeleteDialogComponent,
        TopSubjectMySuffixPopupComponent,
        TopSubjectMySuffixDeletePopupComponent,
    ],
    entryComponents: [
        TopSubjectMySuffixComponent,
        TopSubjectMySuffixDialogComponent,
        TopSubjectMySuffixPopupComponent,
        TopSubjectMySuffixDeleteDialogComponent,
        TopSubjectMySuffixDeletePopupComponent,
    ],
    providers: [
        TopSubjectMySuffixService,
        TopSubjectMySuffixPopupService,
        TopSubjectMySuffixResolvePagingParams,
    ],
    schemas: [CUSTOM_ELEMENTS_SCHEMA]
})
export class GbSubjectTopSubjectMySuffixModule {}
